<h2>Newly introduced :</h2>
<ul>
	<li>[745] :  nkMaths : Quaternion now offers the setFromRotationBetween() method and the linked constructor, allowing to have the Quaternion become the rotation needed to transform one direction A into another direction B.  </li>
	<li>[734] :  nkGraphics : Added an opening to inject low-level textures into the rendering pipeline. This is for now only compatible with the Dx12Renderer, so this allows to provide ID3D12Resource structures as textures the rendering pipeline will be able to render to. This is very useful when injecting render targets from an external library that you need to render content into, using the nkEngine. For more information, please check Texture::setFromExternalResource().  </li>
	<li>[737] :  nkGraphics : The enumeration proper to the Texture class have been moved into their own headers in the Textures/Enums subfolder. Their name also have been expanded from TEX_* to TEXTURE_* for more clarity and following up more closely what other parts of the code are doing. If you were using these enums, you will need to change TEX_ prefix to TEXTURE_ where they are used.  </li>
	<li>[733] :  nkGraphics : Introduced the Renderer::getInternalsData(), which allows to get access to the internals of a renderer. It gives access to what the renderer internally uses to drive the underlying graphics API, allowing client code to wire deeper into the renderer if need be. For instance, the Dx12Renderer provides the device and command queues.  </li>
	<li>[732] :  nkGraphics : The camera now supports the off-center perspective projection. The associated matrix function in nkMaths has been added to generate such projection matrices. Off-center projection is for instance particularly useful for generating the eyes projection matrices in virtual reality.  </li>
	<li>[735] :  nkGraphics : It is now possible to inject a custom depth target into a RenderContext. The RenderContextDescriptor class API has been updated to allow such usage, but it also has been made sturdier against risks of setting it up into an ambiguous state. If you made any direct access to its attributes, it now has to go through the dedicated getters, or through a new construction.  </li>
	<li>[728] :  nkInputs : Introduction of the GamepadDevice, which supports modern gamepad controllers. This allows to support modern Xbox controllers for instance, with two joysticks, triggers, and vibration motors. Note that the current implementation uses XInput internally, which means it supports up to 4 controllers simultaneously. Older devices are not guaranteed to be supported as a result.  </li>
	<li>[725] :  nkGraphics : Added a new constructor allowing to feed a view over an external buffer to the RenderCommandQueue. The DefaultRenderStrategy has been updated to leverage this feature and reduce the number of required memory allocations during a pass. In the best case scenario, no new allocation will happen for a frame, as of now.  </li>
</ul>
<h2>Fixed :</h2>
<ul>
	<li>[747] :   nkAstraeus : Fixed typos in the names of some wrapped methods of nkGraphics::Node, getOrientationRelative() and rotateRelative(). They were still registered using their old spelling, getOrientationRel() and rotateRel(). </li>
	<li>[746] :   nkGraphics : Fixed an issue in the Dx12Renderer that would cause PSOs to not be properly reused, leading to multiple duplications of a same PSO setup. </li>
	<li>[743] :   nkAstraeus : Fixed an issue that could cause the ImageEnvironmentEffect to release the wrong Program, making other effects potentially unable to render. This was caused in a very specific situation when setting it up with the automatic projection logic, and a source Texture that would change type during its lifetime (from 2D to cube for instance). </li>
	<li>[742] :   nkAstraeus : Fixed an issue when computing irradiance on a cube map within PbsEnvironmentMapFilter::requestIrradianceComputing(), that would output faces with mismatched edges on the X and Z axis. The issue was particularly visible with highly contrasted enviromnents. </li>
	<li>[741] :   nkAstraeus : Fixed an issue that could cause a ComplexEffect (Blur or Dof) to double erase the Program used internally during cleanup, causing other effects using the same program to fail rendering afterwards. </li>
	<li>[738] :   nkGraphics : Fixed an issue in the Dx11Renderer that would cause it to fail drawing with the right shader. The issue could be caused in specific conditions when using the same mesh input layout with programs that could have different target registers for matching vertex data semantics. </li>
	<li>[739] :  nkGraphics : Fixed an issue that could cause a crash in the GlesRenderer, when a TargetOperations had an overloaded viewport. This issue would manifest itself when erasing a render context and directly calling Compositor::renderChain() on such a TargetOperations' compositor.   </li>
	<li>[723] :   nkAstraeus : Fixed an issue within the AtmosphereEffect that could make it output corrupted pixels (NaN). This was initially detected on older GPUs (GTX960M) for low camera positions, or if the distance factor was set very high. </li>
</ul>
